Packet transport systems, such as Asynchronous Transfer Mode (ATM) systems, employ a technique of disassembling information at a sending end of a switching network for insertion into separate packets of data and reassembling the same information from the data packets at a receiving end of the switching network. Communication systems employing this technique are especially useful in common carrier or time-shared switching networks, since a communication path or circuit required for packet transmission is needed only while each packet is being forwarded through the switching network. The communication path is, therefore, available to other users during intervening periods.
Packet transport systems are capable of providing integrated information transport services for a wide range of applications (e.g., interactive data, bulk data, signaling, packetized voice, image). Instead of designing specialized networks optimized for specific applications, many services can be simultaneously operated over the same connection to the switching network. User information of varying types are converted into packets, the switching network transporting these packets between users. End users are not tied to fixed rate connections. Instead, the switching network adapts the connection rates to the particular needs of the end users. Furthermore, it is possible to create a uniform user-network interface that is applicable to a broad range of services.
ATM systems are commonly employed within a Wide Area Networks (WANs) and have seen increasing use in both public carrier networks and in private networks, especially those requiring networked voice, video and data traffic. As the organizations require greater WAN access to support higher volumes of traffic, however, the organizations are faced with either paying for the high cost of T3/E3 access lines, which they may not be able to fully utilize, or adding more T1/E1 access lines, thereby creating multiple parallel networks.
Inverse Multiplexing over ATM (IMA) offers one solution to this dilemma. IMA is a User-to-Network Interface (UNI) standard that provides flexibility for ATM based systems. IMA specifies a transmission method in which cells in ATM cell streams are distributed over multiple T1/E1 access lines or physical links. Each link is typically a standard T1/E1 ATM UNI. IMA involves inverse multiplexing and de-multiplexing of ATM cells in a cyclical fashion among links grouped together to form a higher bandwidth logical link (virtual link) having a rate that is approximately a sum of the individual link rates. IMA thus allows network planners to provide bandwidth in T1/E1 increments, increasing or decreasing bandwidth based on user requirements.
IMA devices terminate at each end of the IMA virtual link. At a transmitting IMA device, the ATM cell stream received from the ATM layer is distributed on a cell by cell basis, across the multiple links. At a receiving IMA device, the cells from each of the multiple links are recombined, on a cell by cell basis, thus recreating the original ATM cell stream. The ATM cell stream is then passed on to the ATM layer.
The IMA standard provides for periodic transmission of IMA Control Protocol (ICP) cells, which contain control information for reconstructing the ATM cell stream at a receiving end of the IMA virtual link. The ICP cells provide the definition for the IMA frame. The transmitting IMA device is required to align the IMA frames on all of the links, allowing the receiving IMA device to adjust for differential link delays among the various links forming the virtual link. The receiving IMA device may thus detect differential delays by measuring arrival times of the IMA frames on each link.
A problem arises when the receiving IMA device reads multiple links, each having ICP cells at the same offset from the beginning of the frame (ICP offset). The IMA standard requires that the ICP cells be read and discarded without affecting the timing of the presentation of the ATM cells (data cells) to the ATM layer. Assume, for example, an IMA group consisting of Q links, of which P links (where 1<P≦Q) have the same ICP offset. If it takes Y cycles to read the link parameters and decide whether the current cell is an ICP cell, and it takes X cycles to read a cell pointer, then (P+1) (X+Y) cycles will be required to read the next data cell. This delay in reading the next data cell results in jitter in relation to the time at which the data cell is presented to the ATM layer.
One way to reduce the jitter is to prevent ICP cells from being located at the same ICP offset. While this method appears to be a straightforward solution, it does not provide enough flexibility. For instance, while the links may initially be configured such that the ICP cells are not located at the same ICP offset, repeated reconfiguration of the links may ultimately result in a number of links having the same ICP offset.
Accordingly, what is needed in the art is a system and method for reducing jitter in a packet transport system that overcomes the deficiencies of the prior art.